﻿using System;
using System.Data.Linq.Mapping;

namespace BSU.GraduateWork.Data.Model
{
    [Serializable]
    public abstract class Problem:IEntity<int>
    {
        public virtual int Id { get; set;}

        public abstract ProblemType Type { get; set; }

        internal abstract int InputParametersId { get; set; }

        internal abstract int SolutionId { get; set; }

        internal abstract int ExactSolutionId { get; set; }

        public virtual bool IsGridRegular { get; set; }

        protected Problem()
        {
            Id = -1;
            Type = ProblemType.Simple;
        }
    }
}